<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>slibc: slibc/string.h Source File</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />



</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">slibc
   
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.6.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="dir_4d4a740b65ecc1faa3510c186d2f00c5.html">slibc</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="headertitle">
<div class="title">string.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="string_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* Copyright (C) 2011-2012 SBA Research gGmbh</span>
<a name="l00002"></a>00002 <span class="comment"></span>
<a name="l00003"></a>00003 <span class="comment">   This file is part of the Slibc Library.</span>
<a name="l00004"></a>00004 <span class="comment"></span>
<a name="l00005"></a>00005 <span class="comment">   The Slibc Library is free software; you can redistribute it and/or</span>
<a name="l00006"></a>00006 <span class="comment">   modify it under the terms of the GNU Lesser General Public</span>
<a name="l00007"></a>00007 <span class="comment">   License as published by the Free Software Foundation; either</span>
<a name="l00008"></a>00008 <span class="comment">   version 2.1 of the License, or (at your option) any later version.</span>
<a name="l00009"></a>00009 <span class="comment"></span>
<a name="l00010"></a>00010 <span class="comment">   The Slibc library is distributed in the hope that it will be useful,</span>
<a name="l00011"></a>00011 <span class="comment">   but WITHOUT ANY WARRANTY; without even the implied warranty of</span>
<a name="l00012"></a>00012 <span class="comment">   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU</span>
<a name="l00013"></a>00013 <span class="comment">   Lesser General Public License for more details.</span>
<a name="l00014"></a>00014 <span class="comment"></span>
<a name="l00015"></a>00015 <span class="comment">   You should have received a copy of the GNU Lesser General Public</span>
<a name="l00016"></a>00016 <span class="comment">   License along with the Slibc Library; if not, see</span>
<a name="l00017"></a>00017 <span class="comment">   &lt;http://www.gnu.org/licenses/&gt;.  </span>
<a name="l00018"></a>00018 <span class="comment">*/</span>
<a name="l00023"></a>00023 <span class="preprocessor">#include_next &lt;string.h&gt;</span>
<a name="l00024"></a>00024 <span class="preprocessor"></span>
<a name="l00025"></a>00025 <span class="preprocessor">#ifndef SLIBC_STRING_H</span>
<a name="l00026"></a>00026 <span class="preprocessor"></span><span class="preprocessor">#define SLIBC_STRING_H</span>
<a name="l00027"></a>00027 <span class="preprocessor"></span>
<a name="l00028"></a>00028 <span class="comment">// TR 24731-1 is not available if __STDC_WANT_LIB_EXT1__ equals 0</span>
<a name="l00029"></a>00029 <span class="preprocessor">#if (!defined(__STDC_WANT_LIB_EXT1__) || (__STDC_WANT_LIB_EXT1__ != 0))</span>
<a name="l00030"></a>00030 <span class="preprocessor"></span>
<a name="l00031"></a>00031 <span class="preprocessor">#include &quot;./base_.h&quot;</span>
<a name="l00032"></a>00032 <span class="preprocessor">#include &quot;<a class="code" href="stddef_8h.html" title="TR 24731-1 stddef.h defines the type rsize_t.">./stddef.h</a>&quot;</span>
<a name="l00033"></a>00033 <span class="preprocessor">#include &quot;<a class="code" href="errno_8h.html" title="TR 24731-1 errno.h defines the type errno_t.">./errno.h</a>&quot;</span>
<a name="l00034"></a>00034 
<a name="l00035"></a>00035 
<a name="l00036"></a>00036 SLIBC_BEGIN_DECLS
<a name="l00037"></a>00037 
<a name="l00056"></a>00056 
<a name="l00057"></a>00057 <span class="keywordtype">size_t</span> <a class="code" href="string_8h.html#aab5e41517346e2478a5db9273ab801f7" title="The strnlen_s function determines the length of s.">strnlen_s</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keywordtype">size_t</span> maxsize);
<a name="l00058"></a>00058 
<a name="l00059"></a>00059 
<a name="l00085"></a>00085 
<a name="l00086"></a>00086 errno_t <a class="code" href="string_8h.html#a8328d88ab6bc728a5d2768340470a86c" title="The strcpy_s function copies the string s2 to s1.">strcpy_s</a>(<span class="keywordtype">char</span> * restrict s1, rsize_t s1max, <span class="keyword">const</span> <span class="keywordtype">char</span> * restrict s2);
<a name="l00087"></a>00087 
<a name="l00088"></a>00088 
<a name="l00110"></a>00110 
<a name="l00111"></a>00111 errno_t <a class="code" href="string_8h.html#ac6982f578dbc46c470864f175289fec0" title="The strncpy_s function copies not more than n characters from s2 to s1.">strncpy_s</a>(<span class="keywordtype">char</span> * restrict s1, rsize_t s1max, <span class="keyword">const</span> <span class="keywordtype">char</span> * restrict s2, rsize_t n);
<a name="l00112"></a>00112 
<a name="l00113"></a>00113 
<a name="l00136"></a>00136 
<a name="l00137"></a>00137 errno_t <a class="code" href="string_8h.html#ae3341e764378a4641f16890366c4e213" title="The strcat_s function copies the string s2 to the end of s1.">strcat_s</a>(<span class="keywordtype">char</span> * restrict s1,
<a name="l00138"></a>00138                                  rsize_t s1max,
<a name="l00139"></a>00139                                  <span class="keyword">const</span> <span class="keywordtype">char</span> * restrict s2);
<a name="l00140"></a>00140 
<a name="l00141"></a>00141                  
<a name="l00165"></a>00165  
<a name="l00166"></a>00166 errno_t <a class="code" href="string_8h.html#a37d94a5d2fb891d453ae0a7c6bf13623" title="The strncat_s function copies not more than n characters of the string s2 to the end of s1...">strncat_s</a>(<span class="keywordtype">char</span> * restrict s1,
<a name="l00167"></a>00167                                   rsize_t s1max,
<a name="l00168"></a>00168                                   <span class="keyword">const</span> <span class="keywordtype">char</span> * restrict s2,
<a name="l00169"></a>00169                                   rsize_t n);
<a name="l00170"></a>00170 
<a name="l00171"></a>00171 
<a name="l00195"></a>00195 
<a name="l00196"></a>00196 errno_t <a class="code" href="string_8h.html#aa29fd78a042c805774ecdc5f33adbb78" title="The memcpy_s function copies n bytes from buffer s2 to buffer s1.">memcpy_s</a>(<span class="keywordtype">void</span> * restrict s1, rsize_t s1max,
<a name="l00197"></a>00197                                  <span class="keyword">const</span> <span class="keywordtype">void</span> * restrict s2, rsize_t n);
<a name="l00198"></a>00198 
<a name="l00199"></a>00199 
<a name="l00224"></a>00224 
<a name="l00225"></a>00225 errno_t <a class="code" href="string_8h.html#a94448297a30b4c05885b12bc6983d0c7" title="The memmove_s function copies n bytes from buffer s2 to buffer s1 while allowing the buffers to overl...">memmove_s</a>(<span class="keywordtype">void</span> *s1, rsize_t s1max,
<a name="l00226"></a>00226                 <span class="keyword">const</span> <span class="keywordtype">void</span> *s2, rsize_t n);
<a name="l00227"></a>00227 
<a name="l00228"></a>00228 
<a name="l00253"></a>00253 
<a name="l00254"></a>00254 <span class="keywordtype">char</span> *<a class="code" href="string_8h.html#ada2d37ca45185b9a22f83b54c8550834" title="The strtok_s function breaks a string into smaller strings according to a specified delimiter...">strtok_s</a>(<span class="keywordtype">char</span> * restrict s1,
<a name="l00255"></a>00255         rsize_t * restrict s1max,
<a name="l00256"></a>00256         <span class="keyword">const</span> <span class="keywordtype">char</span> * restrict delim,
<a name="l00257"></a>00257         <span class="keywordtype">char</span> ** restrict ptr);
<a name="l00258"></a>00258 
<a name="l00259"></a>00259 
<a name="l00280"></a>00280 
<a name="l00281"></a>00281 errno_t <a class="code" href="string_8h.html#a959a94cbf8c2f043f7e3280856ab5bf8" title="The strerror_s function returns a human-readable error message for a specified error number...">strerror_s</a>(<span class="keywordtype">char</span> *s, rsize_t maxsize,
<a name="l00282"></a>00282                 errno_t errnum);
<a name="l00283"></a>00283 
<a name="l00284"></a>00284 
<a name="l00297"></a>00297 
<a name="l00298"></a>00298 <span class="keywordtype">size_t</span> <a class="code" href="string_8h.html#a030fbc40f6427964701b8b57e6d9cbe2" title="The strerrorlen_s function determines the length of the error-message for a specified error number...">strerrorlen_s</a>(errno_t errnum);
<a name="l00299"></a>00299 
<a name="l00300"></a>00300 SLIBC_END_DECLS
<a name="l00301"></a>00301 
<a name="l00302"></a>00302 
<a name="l00303"></a>00303 <span class="preprocessor">#if defined(__cplusplus) &amp;&amp; (defined(SLIBC_WANT_TEMPLATES))</span>
<a name="l00304"></a>00304 <span class="preprocessor"></span><span class="preprocessor"># include &quot;<a class="code" href="string__templates___8hpp.html" title="Contains overloaded templates for some _s-functions defined in string.h.">./string_templates_.hpp</a>&quot;</span>
<a name="l00305"></a>00305 <span class="preprocessor">#endif</span>
<a name="l00306"></a>00306 <span class="preprocessor"></span>
<a name="l00307"></a>00307 <span class="preprocessor">#endif //#if (!defined(__STDC_WANT_LIB_EXT1__) || (__STDC_WANT_LIB_EXT1__ != 0))</span>
<a name="l00308"></a>00308 <span class="preprocessor"></span>
<a name="l00309"></a>00309 <span class="preprocessor">#endif</span>
</pre></div></div><!-- contents -->


<hr class="footer"/><address class="footer"><small>
Generated on Wed Oct 31 2012 13:48:20 for slibc by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>

</body>
</html>
